// 库的声明文件
#pragma once 

// C 语言中 , 缓冲区是在 FILE 这个结构体中的 , 其中FILE是typedef 的

/// 定义刷新方式
#define NO_FLUSH 0    // 不刷新
#define LINE_FLUSH 1  // 行刷新
#define FULL_FLUSH 2  // 满了刷新



// struct FILE

#define MAX 1024	
typedef struct IO_FILE
{
   int filenod; // 文件描述符
   int mode; // 打开的方式
   
   // 语言层的缓冲区
   char outbuffer[MAX];	
   int bufferlen;  // 缓冲区长度 
   int flush_mode; // 刷新方式

}MyFile; 

// 实现的接口
MyFile* MyFopen(const char *pathname, const char *mode);
int MyFclose(MyFile* stream);
int MyFwrite(MyFile * stream, void *str, int len);
void MyFFlush(MyFile *);


